The cloud computing model has emerged as the de facto paradigm for providing a wide range of services in the IT industry such as infrastructure, platform, and application services. As a result, various vendors offer cloud based solutions to optimize the use of their data centers. A key enabler for cloud computing is resource virtualization, which enables provisioning of multiple virtual machines (VMs) to provide a service, or a plurality of disparate services, on the same physical host. In addition, resource virtualization provides benefits such as efficiency, resource consolidation, security, provides support for Service Level Agreements (SLAs), and allows for efficient scaling of services that are provided by a cloud computing platform. Resource virtualization, however, raises several issues.
For example, customers of the cloud providers, particularly those building their critical production businesses on cloud services, are interested in collecting and logging detailed monitoring data from the deployed cloud platform to track in real time the health of their thousands of service instances executing on the cloud platform. In this regard, a crucial challenge, especially for a sustainable IT business model, is how to adapt cloud service management, and implicitly its cost (e.g., impact of associated monitoring overhead) to dynamically accommodate changes in service requirements and data centers.
Furthermore, as cloud services journey through their lifecycle towards commodities, cloud computing service providers are faced with market demands for charge models that are based on fine-grained pay-per-use pricing, where customers are charged for the amount of specific resources, e.g., volume of transactions, CPU usage, etc., consumed during a given time period. This is in contrast to historical coarse-grained charge models where cloud service providers charge their customers only on a flat-rate basis, e.g., in the form of a monthly subscription fee. Although this pricing methodology is straight forward and involves little management and performance overhead for the cloud service providers, it does not offer the competitive advantage edge of the usage based pricing. As a particular technology or service becomes more of a commodity (e.g., IaaS (Infrastructure as a Service), or SaaS (Software as a Service)), customers are interested in fine-grained pricing models based on their actual usage. For instance, from the perspective of a SaaS customer, it is more advantageous to be charged based on the usage of the platform (e.g., the number of http transactions or volume of the database queries) instead of a fixed monthly fee, especially when the usage is low.
In this regard, cloud service providers, looking to maintain a competitive advantage by effectively adapting to versatile charging policies, have started to promote pay-per-use. However, usage based pricing brings a new set of service management requirements for the service providers, particularly for their revenue management. The finer-grain metering for usage based pricing requires the system to monitor service resources and applications at appropriate levels to acquire useful information about the resource consumption that is to be charged for. This may result in collecting significantly large amounts of metered data. In addition, computational resources are needed to process the metered data to perform revenue management specific tasks.
The resource capacity requirements for non-revenue generating systems such as monitoring and metering fluctuate largely with, e.g., service demand (e.g., the number of service instances), service price policy updates (e.g., from single metric based charge to complex multi-metric based charge), the resolution of the system behavior exposed (e.g., from higher-level aggregations to individual runaway thread), while their unit cost changes depending on the operational infrastructure solution (e.g., on premise, traditional outsourcing or IaaS). Therefore, a crucial challenge for cloud service providers is how to manage and control service management data and functions, and implicitly the costs of such service management data and functions, in order to profitably remain in the race for the cloud market.